package com.zingrow.web.customer.mapper;

import com.zingrow.web.customer.model.Group;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface GroupMapper {
	/**
	 * 删除组织 改变状态
	 * @param groupId
	 * @return
	 */
    int deleteByPrimaryKey(Integer groupId);

    /**
     * 新增组织
     * @param record
     * @return
     */
    int insert(Group record);

    /**
     * 查询组织
     * @param map
     * @return
     */
    List<Group> select(Map<String,Object> map);
    
    /**
     * 查询所有组织接口
     */
    List<Group> selectgroup();

    /**
	 * 查询所有组织名称
	 * @return
	 */
    List<Group> selectAllName(@Param("groupName")String gName);
    
    /**
     * 修改组织
     * @param record
     * @return
     */
    int updateByPrimaryKey(Group record);
    
    /**
     * 同名组织查询
     */
    int selectSameByGroup(@Param("groupName") String groupName,@Param("groupId") Integer groupId );
    
    List<Group> selectfidName(String ifmId);
    
    /**
     *根据组织查询方案接口
     */
    List<Group> selectgroup(@Param("groupName") String groupName,@Param("ifmInfoName") String ifmInfoName);
    
    /**
     * 查询所有组织
     */
    List<Group> selectAll();
    /**
     * 根据组织id查询下面所有的方案id
     */
    List<Group> selectgroupid(@Param("groupId") Integer groupId);
    
    /**
     * 根据组织ID查询组织简称
     */
    String selectGroupBrieByGroupid(Integer groupId);
    /**
     * 根据组织ID查询组织名称
     */
    String selectGroupNameByGroupid(Integer groupId);
    
    /**
     * 查询该组织栏目字段具体数值
     * @param groupId
     * @return
     */
    Group selectpossess(@Param("groupId") Integer groupId);
    
    /**
     * 判断查询组织可拥有用户数 
     * @param groupId
     * @return
     */
    int selectUsernum(@Param("groupId") Integer groupId);
    
    Group selectgroupName(@Param("groupId") Integer groupId);
    
    /**
     * 根据组织ID，修改组织报告权限
     */
    int updateByGroupId(Group group);
    
    Group selectgruopgroupid(@Param("groupId") Integer groupId);
    
}
